# .摆放家具
# 需求：
# 1）.房子有户型，总面积和家具名称列表
# 新房子没有任何的家具
#
# 2）.家具有名字和占地面积，其中
# ?? 床：占4平米
# ?? 衣柜：占2平面
# ?? 餐桌：占1.5平米
#
# 3）.将以上三件家具添加到房子中
#
# 4）.打印房子时，要求输名出:户型，总面积，剩余面积，家具称列表
from functools import reduce
class House():
    house_xing = '三室一厅'
    area = 120
    tool = ['床', '衣柜','餐桌']
    tool_area = [4,2,1.5]
    tool_name_area = dict(zip(tool,tool_area))
    new_house_tool = []

    def __init__(self,name):
        self.name = name

    def put(self):
        House.new_house_tool.append(House.tool)

    def __call__(self):
        print('户型：{}, 总面积：{}, 家具名称列表：{}'.format(House.house_xing,House.area,House.tool_name_area))
        res = reduce(lambda a,b:a+b,House.tool_area)
        print('剩余面积：{}'.format(House.area-res))

house = House('学区房')
house()





